﻿#if NET7_0_OR_GREATER

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MemoryPack.Tests;

partial class GeneratorDiagnosticsTest
{
    [Fact]
    public void MEMPACK017_TooManyMembers()
    {
        Compile(17, """
using MemoryPack;

[MemoryPackable]
public partial class ManyMembers
{
    public int MyProperty1;
    public int MyProperty2;
    public int MyProperty3;
    public int MyProperty4;
    public int MyProperty5;
    public int MyProperty6;
    public int MyProperty7;
    public int MyProperty8;
    public int MyProperty9;
    public int MyProperty10;
    public int MyProperty11;
    public int MyProperty12;
    public int MyProperty13;
    public int MyProperty14;
    public int MyProperty15;
    public int MyProperty16;
    public int MyProperty17;
    public int MyProperty18;
    public int MyProperty19;
    public int MyProperty20;
    public int MyProperty21;
    public int MyProperty22;
    public int MyProperty23;
    public int MyProperty24;
    public int MyProperty25;
    public int MyProperty26;
    public int MyProperty27;
    public int MyProperty28;
    public int MyProperty29;
    public int MyProperty30;
    public int MyProperty31;
    public int MyProperty32;
    public int MyProperty33;
    public int MyProperty34;
    public int MyProperty35;
    public int MyProperty36;
    public int MyProperty37;
    public int MyProperty38;
    public int MyProperty39;
    public int MyProperty40;
    public int MyProperty41;
    public int MyProperty42;
    public int MyProperty43;
    public int MyProperty44;
    public int MyProperty45;
    public int MyProperty46;
    public int MyProperty47;
    public int MyProperty48;
    public int MyProperty49;
    public int MyProperty50;
    public int MyProperty51;
    public int MyProperty52;
    public int MyProperty53;
    public int MyProperty54;
    public int MyProperty55;
    public int MyProperty56;
    public int MyProperty57;
    public int MyProperty58;
    public int MyProperty59;
    public int MyProperty60;
    public int MyProperty61;
    public int MyProperty62;
    public int MyProperty63;
    public int MyProperty64;
    public int MyProperty65;
    public int MyProperty66;
    public int MyProperty67;
    public int MyProperty68;
    public int MyProperty69;
    public int MyProperty70;
    public int MyProperty71;
    public int MyProperty72;
    public int MyProperty73;
    public int MyProperty74;
    public int MyProperty75;
    public int MyProperty76;
    public int MyProperty77;
    public int MyProperty78;
    public int MyProperty79;
    public int MyProperty80;
    public int MyProperty81;
    public int MyProperty82;
    public int MyProperty83;
    public int MyProperty84;
    public int MyProperty85;
    public int MyProperty86;
    public int MyProperty87;
    public int MyProperty88;
    public int MyProperty89;
    public int MyProperty90;
    public int MyProperty91;
    public int MyProperty92;
    public int MyProperty93;
    public int MyProperty94;
    public int MyProperty95;
    public int MyProperty96;
    public int MyProperty97;
    public int MyProperty98;
    public int MyProperty99;
    public int MyProperty100;
    public int MyProperty101;
    public int MyProperty102;
    public int MyProperty103;
    public int MyProperty104;
    public int MyProperty105;
    public int MyProperty106;
    public int MyProperty107;
    public int MyProperty108;
    public int MyProperty109;
    public int MyProperty110;
    public int MyProperty111;
    public int MyProperty112;
    public int MyProperty113;
    public int MyProperty114;
    public int MyProperty115;
    public int MyProperty116;
    public int MyProperty117;
    public int MyProperty118;
    public int MyProperty119;
    public int MyProperty120;
    public int MyProperty121;
    public int MyProperty122;
    public int MyProperty123;
    public int MyProperty124;
    public int MyProperty125;
    public int MyProperty126;
    public int MyProperty127;
    public int MyProperty128;
    public int MyProperty129;
    public int MyProperty130;
    public int MyProperty131;
    public int MyProperty132;
    public int MyProperty133;
    public int MyProperty134;
    public int MyProperty135;
    public int MyProperty136;
    public int MyProperty137;
    public int MyProperty138;
    public int MyProperty139;
    public int MyProperty140;
    public int MyProperty141;
    public int MyProperty142;
    public int MyProperty143;
    public int MyProperty144;
    public int MyProperty145;
    public int MyProperty146;
    public int MyProperty147;
    public int MyProperty148;
    public int MyProperty149;
    public int MyProperty150;
    public int MyProperty151;
    public int MyProperty152;
    public int MyProperty153;
    public int MyProperty154;
    public int MyProperty155;
    public int MyProperty156;
    public int MyProperty157;
    public int MyProperty158;
    public int MyProperty159;
    public int MyProperty160;
    public int MyProperty161;
    public int MyProperty162;
    public int MyProperty163;
    public int MyProperty164;
    public int MyProperty165;
    public int MyProperty166;
    public int MyProperty167;
    public int MyProperty168;
    public int MyProperty169;
    public int MyProperty170;
    public int MyProperty171;
    public int MyProperty172;
    public int MyProperty173;
    public int MyProperty174;
    public int MyProperty175;
    public int MyProperty176;
    public int MyProperty177;
    public int MyProperty178;
    public int MyProperty179;
    public int MyProperty180;
    public int MyProperty181;
    public int MyProperty182;
    public int MyProperty183;
    public int MyProperty184;
    public int MyProperty185;
    public int MyProperty186;
    public int MyProperty187;
    public int MyProperty188;
    public int MyProperty189;
    public int MyProperty190;
    public int MyProperty191;
    public int MyProperty192;
    public int MyProperty193;
    public int MyProperty194;
    public int MyProperty195;
    public int MyProperty196;
    public int MyProperty197;
    public int MyProperty198;
    public int MyProperty199;
    public int MyProperty200;
    public int MyProperty201;
    public int MyProperty202;
    public int MyProperty203;
    public int MyProperty204;
    public int MyProperty205;
    public int MyProperty206;
    public int MyProperty207;
    public int MyProperty208;
    public int MyProperty209;
    public int MyProperty210;
    public int MyProperty211;
    public int MyProperty212;
    public int MyProperty213;
    public int MyProperty214;
    public int MyProperty215;
    public int MyProperty216;
    public int MyProperty217;
    public int MyProperty218;
    public int MyProperty219;
    public int MyProperty220;
    public int MyProperty221;
    public int MyProperty222;
    public int MyProperty223;
    public int MyProperty224;
    public int MyProperty225;
    public int MyProperty226;
    public int MyProperty227;
    public int MyProperty228;
    public int MyProperty229;
    public int MyProperty230;
    public int MyProperty231;
    public int MyProperty232;
    public int MyProperty233;
    public int MyProperty234;
    public int MyProperty235;
    public int MyProperty236;
    public int MyProperty237;
    public int MyProperty238;
    public int MyProperty239;
    public int MyProperty240;
    public int MyProperty241;
    public int MyProperty242;
    public int MyProperty243;
    public int MyProperty244;
    public int MyProperty245;
    public int MyProperty246;
    public int MyProperty247;
    public int MyProperty248;
    public int MyProperty249;
    public int MyProperty250;
}
""");
    }
}


#endif
